package com.Register.service;

import com.Register.dto.AllCarouselsPageQueryDTO;
import com.Register.dto.CarouselDTO;
import com.Register.dto.CarouselsUpdateDTO;
import com.Register.entity.Carousel;
import com.Register.result.PageResult;
import com.Register.result.Result;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fasterxml.jackson.core.JsonProcessingException;

import java.util.List;


public interface CarouselService extends IService<Carousel> {

    /**
     * 管理员创建轮播图
     */
    Result<String> createCarousel(CarouselDTO carouselDTO) throws JsonProcessingException;

    /**
     * 查询启用的所有轮播图
     */
    List<CarouselDTO> getActiveCarousels() throws JsonProcessingException;

    /**
     * 管理员分页查询所有轮播图
     */
    PageResult getAllCarousels(AllCarouselsPageQueryDTO allCarouselsPageQueryDTO);

    /**
     * 根据id查询轮播图
     */
    Carousel getCarouseByid(Long id);

    /*
    管理员更新轮播图
     */
    Result<String> updateCarouse(CarouselsUpdateDTO carouselsUpdateDTO);
}
